﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.Caching;
namespace ECommerce.DAO.Cache.Productos.Precios
{
    public static class Precio
    {

        public static ECommerce.Model.Productos.Precios.Precio GetPrecioById(Int32 Id)
        {
            ECommerce.Model.Productos.Precios.Precio Precio = new ECommerce.Model.Productos.Precios.Precio();
            try
            {
                Precio = (ECommerce.Model.Productos.Precios.Precio)HttpRuntime.Cache["Precio-" + Id.ToString()];
            }
            catch (Exception ex)
            {
                Precio = null;
            }
            if (Precio != null && Precio.Id == 0)
                Precio = null;
            return Precio;
        }
        public static int SetPrecio(ECommerce.Model.Productos.Precios.Precio Precio)
        {
            try
            {
                HttpRuntime.Cache.Insert("Precio-" + Precio.Id.ToString(), Precio);
            }
            catch (Exception ex)
            {
            }
            return Precio.Id;
        }
        public static int DelPrecio(ECommerce.Model.Productos.Precios.Precio Precio)
        {
            int result = 0;
            try
            {
                HttpRuntime.Cache.Remove("Precio-" + Precio.Id.ToString());
            }
            catch (Exception ex)
            {
            }
            return result;
        }


        public static ECommerce.Model.Productos.Precios.Precio[] GetPreciosByIdProducto(int Id)
        {
            ECommerce.Model.Productos.Precios.Precio[] Precios;
            try
            {
                Precios = (ECommerce.Model.Productos.Precios.Precio[])HttpRuntime.Cache["PreciosByIdProducto-" + Id.ToString()];
            }
            catch (Exception ex)
            {
                Precios = null;
            }
            return Precios;
        }

        public static void SetPreciosByIdProducto(ECommerce.Model.Productos.Precios.Precio[] Precios, int Id)
        {
            try
            {
                HttpRuntime.Cache.Insert("PreciosByIdProducto-" + Id.ToString(), Precios);
            }
            catch (Exception ex)
            {
            }
        }
        public static int DelPreciosByIdProducto(int Id)
        {
            int result = 0;
            try
            {
                HttpRuntime.Cache.Remove("PreciosByIdProducto-" + Id.ToString());
            }
            catch (Exception ex)
            {
            }
            return result;
        }
    }
}
